package com.crx.springbootinit.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.crx.springbootinit.model.dto.follow.FollowPageDTO;
import com.crx.springbootinit.model.entity.Follow;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.crx.springbootinit.model.vo.follow.FollowMeNoticeVO;
import com.crx.springbootinit.model.vo.follow.FollowPageVo;
import com.crx.springbootinit.model.vo.follow.FansVO;
import com.crx.springbootinit.model.vo.follow.FollowVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 关注表 Mapper 接口
 * </p>
 *
 * @author author
 * @since 2024-10-21
 */
public interface FollowMapper extends BaseMapper<Follow> {
    

    List<FansVO> getFansList(@Param("userId") Long userId);

    IPage<FollowPageVo> queryFollowPage(Page<FollowPageVo> page, @Param("followPageDTO") FollowPageDTO followPageDTO);

    IPage<FollowMeNoticeVO> getFollowMeNoticeList(Page<FollowMeNoticeVO> page,@Param("userId") Long userId);

    IPage<FansVO> getFansPage(Page<FansVO> page,@Param("userId") Long userId);

    IPage<FollowVO> getFollowPage(Page<FollowVO> page, Long userId);
}
